//const EventEmitter = require('events');
const Event = require('./05-event.js');

class Dog extends Event{
  constructor(name,energy){
    super();
    this.#name = name;
    this.#energy = energy;
    this.#startTimer();
  }
  get name(){
    return this.#name;
  }
  get energy(){
    return this.#energy;
  }
  set energy(e){
    this.#energy=e;
    this.#startTimer();
  }

  #name='';
  #energy=0;
  #timer=null;
  #startTimer(){
  if(this.#timer!==null) return;
  this.#timer=setInterval(()=>{
    if(this.#energy>0){
      this.#energy--;
      this.emit('bark');
    }else{
      clearInterval(this.#timer);
      this.#timer=null;
    }
  },1000)
}

}
module.exports=Dog;
